package com.zhongwang.business.gen.entity;

import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;
import java.util.List;

public class ContractMainExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public ContractMainExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        protected void addCriterionForJDBCDate(String condition, Date value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value.getTime()), property);
        }

        protected void addCriterionForJDBCDate(String condition, List<Date> values, String property) {
            if (values == null || values.size() == 0) {
                throw new RuntimeException("Value list for " + property + " cannot be null or empty");
            }
            List<java.sql.Date> dateList = new ArrayList<java.sql.Date>();
            Iterator<Date> iter = values.iterator();
            while (iter.hasNext()) {
                dateList.add(new java.sql.Date(iter.next().getTime()));
            }
            addCriterion(condition, dateList, property);
        }

        protected void addCriterionForJDBCDate(String condition, Date value1, Date value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value1.getTime()), new java.sql.Date(value2.getTime()), property);
        }

        public Criteria andContIdIsNull() {
            addCriterion("cont_id is null");
            return (Criteria) this;
        }

        public Criteria andContIdIsNotNull() {
            addCriterion("cont_id is not null");
            return (Criteria) this;
        }

        public Criteria andContIdEqualTo(Integer value) {
            addCriterion("cont_id =", value, "contId");
            return (Criteria) this;
        }

        public Criteria andContIdNotEqualTo(Integer value) {
            addCriterion("cont_id <>", value, "contId");
            return (Criteria) this;
        }

        public Criteria andContIdGreaterThan(Integer value) {
            addCriterion("cont_id >", value, "contId");
            return (Criteria) this;
        }

        public Criteria andContIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("cont_id >=", value, "contId");
            return (Criteria) this;
        }

        public Criteria andContIdLessThan(Integer value) {
            addCriterion("cont_id <", value, "contId");
            return (Criteria) this;
        }

        public Criteria andContIdLessThanOrEqualTo(Integer value) {
            addCriterion("cont_id <=", value, "contId");
            return (Criteria) this;
        }

        public Criteria andContIdIn(List<Integer> values) {
            addCriterion("cont_id in", values, "contId");
            return (Criteria) this;
        }

        public Criteria andContIdNotIn(List<Integer> values) {
            addCriterion("cont_id not in", values, "contId");
            return (Criteria) this;
        }

        public Criteria andContIdBetween(Integer value1, Integer value2) {
            addCriterion("cont_id between", value1, value2, "contId");
            return (Criteria) this;
        }

        public Criteria andContIdNotBetween(Integer value1, Integer value2) {
            addCriterion("cont_id not between", value1, value2, "contId");
            return (Criteria) this;
        }

        public Criteria andMainContIdIsNull() {
            addCriterion("main_cont_id is null");
            return (Criteria) this;
        }

        public Criteria andMainContIdIsNotNull() {
            addCriterion("main_cont_id is not null");
            return (Criteria) this;
        }

        public Criteria andMainContIdEqualTo(Integer value) {
            addCriterion("main_cont_id =", value, "mainContId");
            return (Criteria) this;
        }

        public Criteria andMainContIdNotEqualTo(Integer value) {
            addCriterion("main_cont_id <>", value, "mainContId");
            return (Criteria) this;
        }

        public Criteria andMainContIdGreaterThan(Integer value) {
            addCriterion("main_cont_id >", value, "mainContId");
            return (Criteria) this;
        }

        public Criteria andMainContIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("main_cont_id >=", value, "mainContId");
            return (Criteria) this;
        }

        public Criteria andMainContIdLessThan(Integer value) {
            addCriterion("main_cont_id <", value, "mainContId");
            return (Criteria) this;
        }

        public Criteria andMainContIdLessThanOrEqualTo(Integer value) {
            addCriterion("main_cont_id <=", value, "mainContId");
            return (Criteria) this;
        }

        public Criteria andMainContIdIn(List<Integer> values) {
            addCriterion("main_cont_id in", values, "mainContId");
            return (Criteria) this;
        }

        public Criteria andMainContIdNotIn(List<Integer> values) {
            addCriterion("main_cont_id not in", values, "mainContId");
            return (Criteria) this;
        }

        public Criteria andMainContIdBetween(Integer value1, Integer value2) {
            addCriterion("main_cont_id between", value1, value2, "mainContId");
            return (Criteria) this;
        }

        public Criteria andMainContIdNotBetween(Integer value1, Integer value2) {
            addCriterion("main_cont_id not between", value1, value2, "mainContId");
            return (Criteria) this;
        }

        public Criteria andContArchRevNoIsNull() {
            addCriterion("cont_arch_rev_no is null");
            return (Criteria) this;
        }

        public Criteria andContArchRevNoIsNotNull() {
            addCriterion("cont_arch_rev_no is not null");
            return (Criteria) this;
        }

        public Criteria andContArchRevNoEqualTo(String value) {
            addCriterion("cont_arch_rev_no =", value, "contArchRevNo");
            return (Criteria) this;
        }

        public Criteria andContArchRevNoNotEqualTo(String value) {
            addCriterion("cont_arch_rev_no <>", value, "contArchRevNo");
            return (Criteria) this;
        }

        public Criteria andContArchRevNoGreaterThan(String value) {
            addCriterion("cont_arch_rev_no >", value, "contArchRevNo");
            return (Criteria) this;
        }

        public Criteria andContArchRevNoGreaterThanOrEqualTo(String value) {
            addCriterion("cont_arch_rev_no >=", value, "contArchRevNo");
            return (Criteria) this;
        }

        public Criteria andContArchRevNoLessThan(String value) {
            addCriterion("cont_arch_rev_no <", value, "contArchRevNo");
            return (Criteria) this;
        }

        public Criteria andContArchRevNoLessThanOrEqualTo(String value) {
            addCriterion("cont_arch_rev_no <=", value, "contArchRevNo");
            return (Criteria) this;
        }

        public Criteria andContArchRevNoLike(String value) {
            addCriterion("cont_arch_rev_no like", value, "contArchRevNo");
            return (Criteria) this;
        }

        public Criteria andContArchRevNoNotLike(String value) {
            addCriterion("cont_arch_rev_no not like", value, "contArchRevNo");
            return (Criteria) this;
        }

        public Criteria andContArchRevNoIn(List<String> values) {
            addCriterion("cont_arch_rev_no in", values, "contArchRevNo");
            return (Criteria) this;
        }

        public Criteria andContArchRevNoNotIn(List<String> values) {
            addCriterion("cont_arch_rev_no not in", values, "contArchRevNo");
            return (Criteria) this;
        }

        public Criteria andContArchRevNoBetween(String value1, String value2) {
            addCriterion("cont_arch_rev_no between", value1, value2, "contArchRevNo");
            return (Criteria) this;
        }

        public Criteria andContArchRevNoNotBetween(String value1, String value2) {
            addCriterion("cont_arch_rev_no not between", value1, value2, "contArchRevNo");
            return (Criteria) this;
        }

        public Criteria andContArchArchNoIsNull() {
            addCriterion("cont_arch_arch_no is null");
            return (Criteria) this;
        }

        public Criteria andContArchArchNoIsNotNull() {
            addCriterion("cont_arch_arch_no is not null");
            return (Criteria) this;
        }

        public Criteria andContArchArchNoEqualTo(String value) {
            addCriterion("cont_arch_arch_no =", value, "contArchArchNo");
            return (Criteria) this;
        }

        public Criteria andContArchArchNoNotEqualTo(String value) {
            addCriterion("cont_arch_arch_no <>", value, "contArchArchNo");
            return (Criteria) this;
        }

        public Criteria andContArchArchNoGreaterThan(String value) {
            addCriterion("cont_arch_arch_no >", value, "contArchArchNo");
            return (Criteria) this;
        }

        public Criteria andContArchArchNoGreaterThanOrEqualTo(String value) {
            addCriterion("cont_arch_arch_no >=", value, "contArchArchNo");
            return (Criteria) this;
        }

        public Criteria andContArchArchNoLessThan(String value) {
            addCriterion("cont_arch_arch_no <", value, "contArchArchNo");
            return (Criteria) this;
        }

        public Criteria andContArchArchNoLessThanOrEqualTo(String value) {
            addCriterion("cont_arch_arch_no <=", value, "contArchArchNo");
            return (Criteria) this;
        }

        public Criteria andContArchArchNoLike(String value) {
            addCriterion("cont_arch_arch_no like", value, "contArchArchNo");
            return (Criteria) this;
        }

        public Criteria andContArchArchNoNotLike(String value) {
            addCriterion("cont_arch_arch_no not like", value, "contArchArchNo");
            return (Criteria) this;
        }

        public Criteria andContArchArchNoIn(List<String> values) {
            addCriterion("cont_arch_arch_no in", values, "contArchArchNo");
            return (Criteria) this;
        }

        public Criteria andContArchArchNoNotIn(List<String> values) {
            addCriterion("cont_arch_arch_no not in", values, "contArchArchNo");
            return (Criteria) this;
        }

        public Criteria andContArchArchNoBetween(String value1, String value2) {
            addCriterion("cont_arch_arch_no between", value1, value2, "contArchArchNo");
            return (Criteria) this;
        }

        public Criteria andContArchArchNoNotBetween(String value1, String value2) {
            addCriterion("cont_arch_arch_no not between", value1, value2, "contArchArchNo");
            return (Criteria) this;
        }

        public Criteria andContTypeIsNull() {
            addCriterion("cont_type is null");
            return (Criteria) this;
        }

        public Criteria andContTypeIsNotNull() {
            addCriterion("cont_type is not null");
            return (Criteria) this;
        }

        public Criteria andContTypeEqualTo(Integer value) {
            addCriterion("cont_type =", value, "contType");
            return (Criteria) this;
        }

        public Criteria andContTypeNotEqualTo(Integer value) {
            addCriterion("cont_type <>", value, "contType");
            return (Criteria) this;
        }

        public Criteria andContTypeGreaterThan(Integer value) {
            addCriterion("cont_type >", value, "contType");
            return (Criteria) this;
        }

        public Criteria andContTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("cont_type >=", value, "contType");
            return (Criteria) this;
        }

        public Criteria andContTypeLessThan(Integer value) {
            addCriterion("cont_type <", value, "contType");
            return (Criteria) this;
        }

        public Criteria andContTypeLessThanOrEqualTo(Integer value) {
            addCriterion("cont_type <=", value, "contType");
            return (Criteria) this;
        }

        public Criteria andContTypeIn(List<Integer> values) {
            addCriterion("cont_type in", values, "contType");
            return (Criteria) this;
        }

        public Criteria andContTypeNotIn(List<Integer> values) {
            addCriterion("cont_type not in", values, "contType");
            return (Criteria) this;
        }

        public Criteria andContTypeBetween(Integer value1, Integer value2) {
            addCriterion("cont_type between", value1, value2, "contType");
            return (Criteria) this;
        }

        public Criteria andContTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("cont_type not between", value1, value2, "contType");
            return (Criteria) this;
        }

        public Criteria andContInerTypeIsNull() {
            addCriterion("cont_iner_type is null");
            return (Criteria) this;
        }

        public Criteria andContInerTypeIsNotNull() {
            addCriterion("cont_iner_type is not null");
            return (Criteria) this;
        }

        public Criteria andContInerTypeEqualTo(Integer value) {
            addCriterion("cont_iner_type =", value, "contInerType");
            return (Criteria) this;
        }

        public Criteria andContInerTypeNotEqualTo(Integer value) {
            addCriterion("cont_iner_type <>", value, "contInerType");
            return (Criteria) this;
        }

        public Criteria andContInerTypeGreaterThan(Integer value) {
            addCriterion("cont_iner_type >", value, "contInerType");
            return (Criteria) this;
        }

        public Criteria andContInerTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("cont_iner_type >=", value, "contInerType");
            return (Criteria) this;
        }

        public Criteria andContInerTypeLessThan(Integer value) {
            addCriterion("cont_iner_type <", value, "contInerType");
            return (Criteria) this;
        }

        public Criteria andContInerTypeLessThanOrEqualTo(Integer value) {
            addCriterion("cont_iner_type <=", value, "contInerType");
            return (Criteria) this;
        }

        public Criteria andContInerTypeIn(List<Integer> values) {
            addCriterion("cont_iner_type in", values, "contInerType");
            return (Criteria) this;
        }

        public Criteria andContInerTypeNotIn(List<Integer> values) {
            addCriterion("cont_iner_type not in", values, "contInerType");
            return (Criteria) this;
        }

        public Criteria andContInerTypeBetween(Integer value1, Integer value2) {
            addCriterion("cont_iner_type between", value1, value2, "contInerType");
            return (Criteria) this;
        }

        public Criteria andContInerTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("cont_iner_type not between", value1, value2, "contInerType");
            return (Criteria) this;
        }

        public Criteria andContExterTypeIsNull() {
            addCriterion("cont_exter_type is null");
            return (Criteria) this;
        }

        public Criteria andContExterTypeIsNotNull() {
            addCriterion("cont_exter_type is not null");
            return (Criteria) this;
        }

        public Criteria andContExterTypeEqualTo(Integer value) {
            addCriterion("cont_exter_type =", value, "contExterType");
            return (Criteria) this;
        }

        public Criteria andContExterTypeNotEqualTo(Integer value) {
            addCriterion("cont_exter_type <>", value, "contExterType");
            return (Criteria) this;
        }

        public Criteria andContExterTypeGreaterThan(Integer value) {
            addCriterion("cont_exter_type >", value, "contExterType");
            return (Criteria) this;
        }

        public Criteria andContExterTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("cont_exter_type >=", value, "contExterType");
            return (Criteria) this;
        }

        public Criteria andContExterTypeLessThan(Integer value) {
            addCriterion("cont_exter_type <", value, "contExterType");
            return (Criteria) this;
        }

        public Criteria andContExterTypeLessThanOrEqualTo(Integer value) {
            addCriterion("cont_exter_type <=", value, "contExterType");
            return (Criteria) this;
        }

        public Criteria andContExterTypeIn(List<Integer> values) {
            addCriterion("cont_exter_type in", values, "contExterType");
            return (Criteria) this;
        }

        public Criteria andContExterTypeNotIn(List<Integer> values) {
            addCriterion("cont_exter_type not in", values, "contExterType");
            return (Criteria) this;
        }

        public Criteria andContExterTypeBetween(Integer value1, Integer value2) {
            addCriterion("cont_exter_type between", value1, value2, "contExterType");
            return (Criteria) this;
        }

        public Criteria andContExterTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("cont_exter_type not between", value1, value2, "contExterType");
            return (Criteria) this;
        }

        public Criteria andConsumerContractNoIsNull() {
            addCriterion("consumer_contract_no is null");
            return (Criteria) this;
        }

        public Criteria andConsumerContractNoIsNotNull() {
            addCriterion("consumer_contract_no is not null");
            return (Criteria) this;
        }

        public Criteria andConsumerContractNoEqualTo(String value) {
            addCriterion("consumer_contract_no =", value, "consumerContractNo");
            return (Criteria) this;
        }

        public Criteria andConsumerContractNoNotEqualTo(String value) {
            addCriterion("consumer_contract_no <>", value, "consumerContractNo");
            return (Criteria) this;
        }

        public Criteria andConsumerContractNoGreaterThan(String value) {
            addCriterion("consumer_contract_no >", value, "consumerContractNo");
            return (Criteria) this;
        }

        public Criteria andConsumerContractNoGreaterThanOrEqualTo(String value) {
            addCriterion("consumer_contract_no >=", value, "consumerContractNo");
            return (Criteria) this;
        }

        public Criteria andConsumerContractNoLessThan(String value) {
            addCriterion("consumer_contract_no <", value, "consumerContractNo");
            return (Criteria) this;
        }

        public Criteria andConsumerContractNoLessThanOrEqualTo(String value) {
            addCriterion("consumer_contract_no <=", value, "consumerContractNo");
            return (Criteria) this;
        }

        public Criteria andConsumerContractNoLike(String value) {
            addCriterion("consumer_contract_no like", value, "consumerContractNo");
            return (Criteria) this;
        }

        public Criteria andConsumerContractNoNotLike(String value) {
            addCriterion("consumer_contract_no not like", value, "consumerContractNo");
            return (Criteria) this;
        }

        public Criteria andConsumerContractNoIn(List<String> values) {
            addCriterion("consumer_contract_no in", values, "consumerContractNo");
            return (Criteria) this;
        }

        public Criteria andConsumerContractNoNotIn(List<String> values) {
            addCriterion("consumer_contract_no not in", values, "consumerContractNo");
            return (Criteria) this;
        }

        public Criteria andConsumerContractNoBetween(String value1, String value2) {
            addCriterion("consumer_contract_no between", value1, value2, "consumerContractNo");
            return (Criteria) this;
        }

        public Criteria andConsumerContractNoNotBetween(String value1, String value2) {
            addCriterion("consumer_contract_no not between", value1, value2, "consumerContractNo");
            return (Criteria) this;
        }

        public Criteria andConsumerNameIsNull() {
            addCriterion("consumer_name is null");
            return (Criteria) this;
        }

        public Criteria andConsumerNameIsNotNull() {
            addCriterion("consumer_name is not null");
            return (Criteria) this;
        }

        public Criteria andConsumerNameEqualTo(String value) {
            addCriterion("consumer_name =", value, "consumerName");
            return (Criteria) this;
        }

        public Criteria andConsumerNameNotEqualTo(String value) {
            addCriterion("consumer_name <>", value, "consumerName");
            return (Criteria) this;
        }

        public Criteria andConsumerNameGreaterThan(String value) {
            addCriterion("consumer_name >", value, "consumerName");
            return (Criteria) this;
        }

        public Criteria andConsumerNameGreaterThanOrEqualTo(String value) {
            addCriterion("consumer_name >=", value, "consumerName");
            return (Criteria) this;
        }

        public Criteria andConsumerNameLessThan(String value) {
            addCriterion("consumer_name <", value, "consumerName");
            return (Criteria) this;
        }

        public Criteria andConsumerNameLessThanOrEqualTo(String value) {
            addCriterion("consumer_name <=", value, "consumerName");
            return (Criteria) this;
        }

        public Criteria andConsumerNameLike(String value) {
            addCriterion("consumer_name like", value, "consumerName");
            return (Criteria) this;
        }

        public Criteria andConsumerNameNotLike(String value) {
            addCriterion("consumer_name not like", value, "consumerName");
            return (Criteria) this;
        }

        public Criteria andConsumerNameIn(List<String> values) {
            addCriterion("consumer_name in", values, "consumerName");
            return (Criteria) this;
        }

        public Criteria andConsumerNameNotIn(List<String> values) {
            addCriterion("consumer_name not in", values, "consumerName");
            return (Criteria) this;
        }

        public Criteria andConsumerNameBetween(String value1, String value2) {
            addCriterion("consumer_name between", value1, value2, "consumerName");
            return (Criteria) this;
        }

        public Criteria andConsumerNameNotBetween(String value1, String value2) {
            addCriterion("consumer_name not between", value1, value2, "consumerName");
            return (Criteria) this;
        }

        public Criteria andConsumerAddressIsNull() {
            addCriterion("consumer_address is null");
            return (Criteria) this;
        }

        public Criteria andConsumerAddressIsNotNull() {
            addCriterion("consumer_address is not null");
            return (Criteria) this;
        }

        public Criteria andConsumerAddressEqualTo(String value) {
            addCriterion("consumer_address =", value, "consumerAddress");
            return (Criteria) this;
        }

        public Criteria andConsumerAddressNotEqualTo(String value) {
            addCriterion("consumer_address <>", value, "consumerAddress");
            return (Criteria) this;
        }

        public Criteria andConsumerAddressGreaterThan(String value) {
            addCriterion("consumer_address >", value, "consumerAddress");
            return (Criteria) this;
        }

        public Criteria andConsumerAddressGreaterThanOrEqualTo(String value) {
            addCriterion("consumer_address >=", value, "consumerAddress");
            return (Criteria) this;
        }

        public Criteria andConsumerAddressLessThan(String value) {
            addCriterion("consumer_address <", value, "consumerAddress");
            return (Criteria) this;
        }

        public Criteria andConsumerAddressLessThanOrEqualTo(String value) {
            addCriterion("consumer_address <=", value, "consumerAddress");
            return (Criteria) this;
        }

        public Criteria andConsumerAddressLike(String value) {
            addCriterion("consumer_address like", value, "consumerAddress");
            return (Criteria) this;
        }

        public Criteria andConsumerAddressNotLike(String value) {
            addCriterion("consumer_address not like", value, "consumerAddress");
            return (Criteria) this;
        }

        public Criteria andConsumerAddressIn(List<String> values) {
            addCriterion("consumer_address in", values, "consumerAddress");
            return (Criteria) this;
        }

        public Criteria andConsumerAddressNotIn(List<String> values) {
            addCriterion("consumer_address not in", values, "consumerAddress");
            return (Criteria) this;
        }

        public Criteria andConsumerAddressBetween(String value1, String value2) {
            addCriterion("consumer_address between", value1, value2, "consumerAddress");
            return (Criteria) this;
        }

        public Criteria andConsumerAddressNotBetween(String value1, String value2) {
            addCriterion("consumer_address not between", value1, value2, "consumerAddress");
            return (Criteria) this;
        }

        public Criteria andConsumerSignDateIsNull() {
            addCriterion("consumer_sign_date is null");
            return (Criteria) this;
        }

        public Criteria andConsumerSignDateIsNotNull() {
            addCriterion("consumer_sign_date is not null");
            return (Criteria) this;
        }

        public Criteria andConsumerSignDateEqualTo(Date value) {
            addCriterionForJDBCDate("consumer_sign_date =", value, "consumerSignDate");
            return (Criteria) this;
        }

        public Criteria andConsumerSignDateNotEqualTo(Date value) {
            addCriterionForJDBCDate("consumer_sign_date <>", value, "consumerSignDate");
            return (Criteria) this;
        }

        public Criteria andConsumerSignDateGreaterThan(Date value) {
            addCriterionForJDBCDate("consumer_sign_date >", value, "consumerSignDate");
            return (Criteria) this;
        }

        public Criteria andConsumerSignDateGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("consumer_sign_date >=", value, "consumerSignDate");
            return (Criteria) this;
        }

        public Criteria andConsumerSignDateLessThan(Date value) {
            addCriterionForJDBCDate("consumer_sign_date <", value, "consumerSignDate");
            return (Criteria) this;
        }

        public Criteria andConsumerSignDateLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("consumer_sign_date <=", value, "consumerSignDate");
            return (Criteria) this;
        }

        public Criteria andConsumerSignDateIn(List<Date> values) {
            addCriterionForJDBCDate("consumer_sign_date in", values, "consumerSignDate");
            return (Criteria) this;
        }

        public Criteria andConsumerSignDateNotIn(List<Date> values) {
            addCriterionForJDBCDate("consumer_sign_date not in", values, "consumerSignDate");
            return (Criteria) this;
        }

        public Criteria andConsumerSignDateBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("consumer_sign_date between", value1, value2, "consumerSignDate");
            return (Criteria) this;
        }

        public Criteria andConsumerSignDateNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("consumer_sign_date not between", value1, value2, "consumerSignDate");
            return (Criteria) this;
        }

        public Criteria andSupplierContractNoIsNull() {
            addCriterion("supplier_contract_no is null");
            return (Criteria) this;
        }

        public Criteria andSupplierContractNoIsNotNull() {
            addCriterion("supplier_contract_no is not null");
            return (Criteria) this;
        }

        public Criteria andSupplierContractNoEqualTo(String value) {
            addCriterion("supplier_contract_no =", value, "supplierContractNo");
            return (Criteria) this;
        }

        public Criteria andSupplierContractNoNotEqualTo(String value) {
            addCriterion("supplier_contract_no <>", value, "supplierContractNo");
            return (Criteria) this;
        }

        public Criteria andSupplierContractNoGreaterThan(String value) {
            addCriterion("supplier_contract_no >", value, "supplierContractNo");
            return (Criteria) this;
        }

        public Criteria andSupplierContractNoGreaterThanOrEqualTo(String value) {
            addCriterion("supplier_contract_no >=", value, "supplierContractNo");
            return (Criteria) this;
        }

        public Criteria andSupplierContractNoLessThan(String value) {
            addCriterion("supplier_contract_no <", value, "supplierContractNo");
            return (Criteria) this;
        }

        public Criteria andSupplierContractNoLessThanOrEqualTo(String value) {
            addCriterion("supplier_contract_no <=", value, "supplierContractNo");
            return (Criteria) this;
        }

        public Criteria andSupplierContractNoLike(String value) {
            addCriterion("supplier_contract_no like", value, "supplierContractNo");
            return (Criteria) this;
        }

        public Criteria andSupplierContractNoNotLike(String value) {
            addCriterion("supplier_contract_no not like", value, "supplierContractNo");
            return (Criteria) this;
        }

        public Criteria andSupplierContractNoIn(List<String> values) {
            addCriterion("supplier_contract_no in", values, "supplierContractNo");
            return (Criteria) this;
        }

        public Criteria andSupplierContractNoNotIn(List<String> values) {
            addCriterion("supplier_contract_no not in", values, "supplierContractNo");
            return (Criteria) this;
        }

        public Criteria andSupplierContractNoBetween(String value1, String value2) {
            addCriterion("supplier_contract_no between", value1, value2, "supplierContractNo");
            return (Criteria) this;
        }

        public Criteria andSupplierContractNoNotBetween(String value1, String value2) {
            addCriterion("supplier_contract_no not between", value1, value2, "supplierContractNo");
            return (Criteria) this;
        }

        public Criteria andSupplierNameIsNull() {
            addCriterion("supplier_name is null");
            return (Criteria) this;
        }

        public Criteria andSupplierNameIsNotNull() {
            addCriterion("supplier_name is not null");
            return (Criteria) this;
        }

        public Criteria andSupplierNameEqualTo(String value) {
            addCriterion("supplier_name =", value, "supplierName");
            return (Criteria) this;
        }

        public Criteria andSupplierNameNotEqualTo(String value) {
            addCriterion("supplier_name <>", value, "supplierName");
            return (Criteria) this;
        }

        public Criteria andSupplierNameGreaterThan(String value) {
            addCriterion("supplier_name >", value, "supplierName");
            return (Criteria) this;
        }

        public Criteria andSupplierNameGreaterThanOrEqualTo(String value) {
            addCriterion("supplier_name >=", value, "supplierName");
            return (Criteria) this;
        }

        public Criteria andSupplierNameLessThan(String value) {
            addCriterion("supplier_name <", value, "supplierName");
            return (Criteria) this;
        }

        public Criteria andSupplierNameLessThanOrEqualTo(String value) {
            addCriterion("supplier_name <=", value, "supplierName");
            return (Criteria) this;
        }

        public Criteria andSupplierNameLike(String value) {
            addCriterion("supplier_name like", value, "supplierName");
            return (Criteria) this;
        }

        public Criteria andSupplierNameNotLike(String value) {
            addCriterion("supplier_name not like", value, "supplierName");
            return (Criteria) this;
        }

        public Criteria andSupplierNameIn(List<String> values) {
            addCriterion("supplier_name in", values, "supplierName");
            return (Criteria) this;
        }

        public Criteria andSupplierNameNotIn(List<String> values) {
            addCriterion("supplier_name not in", values, "supplierName");
            return (Criteria) this;
        }

        public Criteria andSupplierNameBetween(String value1, String value2) {
            addCriterion("supplier_name between", value1, value2, "supplierName");
            return (Criteria) this;
        }

        public Criteria andSupplierNameNotBetween(String value1, String value2) {
            addCriterion("supplier_name not between", value1, value2, "supplierName");
            return (Criteria) this;
        }

        public Criteria andSupplierAddressIsNull() {
            addCriterion("supplier_address is null");
            return (Criteria) this;
        }

        public Criteria andSupplierAddressIsNotNull() {
            addCriterion("supplier_address is not null");
            return (Criteria) this;
        }

        public Criteria andSupplierAddressEqualTo(String value) {
            addCriterion("supplier_address =", value, "supplierAddress");
            return (Criteria) this;
        }

        public Criteria andSupplierAddressNotEqualTo(String value) {
            addCriterion("supplier_address <>", value, "supplierAddress");
            return (Criteria) this;
        }

        public Criteria andSupplierAddressGreaterThan(String value) {
            addCriterion("supplier_address >", value, "supplierAddress");
            return (Criteria) this;
        }

        public Criteria andSupplierAddressGreaterThanOrEqualTo(String value) {
            addCriterion("supplier_address >=", value, "supplierAddress");
            return (Criteria) this;
        }

        public Criteria andSupplierAddressLessThan(String value) {
            addCriterion("supplier_address <", value, "supplierAddress");
            return (Criteria) this;
        }

        public Criteria andSupplierAddressLessThanOrEqualTo(String value) {
            addCriterion("supplier_address <=", value, "supplierAddress");
            return (Criteria) this;
        }

        public Criteria andSupplierAddressLike(String value) {
            addCriterion("supplier_address like", value, "supplierAddress");
            return (Criteria) this;
        }

        public Criteria andSupplierAddressNotLike(String value) {
            addCriterion("supplier_address not like", value, "supplierAddress");
            return (Criteria) this;
        }

        public Criteria andSupplierAddressIn(List<String> values) {
            addCriterion("supplier_address in", values, "supplierAddress");
            return (Criteria) this;
        }

        public Criteria andSupplierAddressNotIn(List<String> values) {
            addCriterion("supplier_address not in", values, "supplierAddress");
            return (Criteria) this;
        }

        public Criteria andSupplierAddressBetween(String value1, String value2) {
            addCriterion("supplier_address between", value1, value2, "supplierAddress");
            return (Criteria) this;
        }

        public Criteria andSupplierAddressNotBetween(String value1, String value2) {
            addCriterion("supplier_address not between", value1, value2, "supplierAddress");
            return (Criteria) this;
        }

        public Criteria andSupplierSignDateIsNull() {
            addCriterion("supplier_sign_date is null");
            return (Criteria) this;
        }

        public Criteria andSupplierSignDateIsNotNull() {
            addCriterion("supplier_sign_date is not null");
            return (Criteria) this;
        }

        public Criteria andSupplierSignDateEqualTo(Date value) {
            addCriterionForJDBCDate("supplier_sign_date =", value, "supplierSignDate");
            return (Criteria) this;
        }

        public Criteria andSupplierSignDateNotEqualTo(Date value) {
            addCriterionForJDBCDate("supplier_sign_date <>", value, "supplierSignDate");
            return (Criteria) this;
        }

        public Criteria andSupplierSignDateGreaterThan(Date value) {
            addCriterionForJDBCDate("supplier_sign_date >", value, "supplierSignDate");
            return (Criteria) this;
        }

        public Criteria andSupplierSignDateGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("supplier_sign_date >=", value, "supplierSignDate");
            return (Criteria) this;
        }

        public Criteria andSupplierSignDateLessThan(Date value) {
            addCriterionForJDBCDate("supplier_sign_date <", value, "supplierSignDate");
            return (Criteria) this;
        }

        public Criteria andSupplierSignDateLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("supplier_sign_date <=", value, "supplierSignDate");
            return (Criteria) this;
        }

        public Criteria andSupplierSignDateIn(List<Date> values) {
            addCriterionForJDBCDate("supplier_sign_date in", values, "supplierSignDate");
            return (Criteria) this;
        }

        public Criteria andSupplierSignDateNotIn(List<Date> values) {
            addCriterionForJDBCDate("supplier_sign_date not in", values, "supplierSignDate");
            return (Criteria) this;
        }

        public Criteria andSupplierSignDateBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("supplier_sign_date between", value1, value2, "supplierSignDate");
            return (Criteria) this;
        }

        public Criteria andSupplierSignDateNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("supplier_sign_date not between", value1, value2, "supplierSignDate");
            return (Criteria) this;
        }

        public Criteria andContGentDateIsNull() {
            addCriterion("cont_gent_date is null");
            return (Criteria) this;
        }

        public Criteria andContGentDateIsNotNull() {
            addCriterion("cont_gent_date is not null");
            return (Criteria) this;
        }

        public Criteria andContGentDateEqualTo(Date value) {
            addCriterionForJDBCDate("cont_gent_date =", value, "contGentDate");
            return (Criteria) this;
        }

        public Criteria andContGentDateNotEqualTo(Date value) {
            addCriterionForJDBCDate("cont_gent_date <>", value, "contGentDate");
            return (Criteria) this;
        }

        public Criteria andContGentDateGreaterThan(Date value) {
            addCriterionForJDBCDate("cont_gent_date >", value, "contGentDate");
            return (Criteria) this;
        }

        public Criteria andContGentDateGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("cont_gent_date >=", value, "contGentDate");
            return (Criteria) this;
        }

        public Criteria andContGentDateLessThan(Date value) {
            addCriterionForJDBCDate("cont_gent_date <", value, "contGentDate");
            return (Criteria) this;
        }

        public Criteria andContGentDateLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("cont_gent_date <=", value, "contGentDate");
            return (Criteria) this;
        }

        public Criteria andContGentDateIn(List<Date> values) {
            addCriterionForJDBCDate("cont_gent_date in", values, "contGentDate");
            return (Criteria) this;
        }

        public Criteria andContGentDateNotIn(List<Date> values) {
            addCriterionForJDBCDate("cont_gent_date not in", values, "contGentDate");
            return (Criteria) this;
        }

        public Criteria andContGentDateBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("cont_gent_date between", value1, value2, "contGentDate");
            return (Criteria) this;
        }

        public Criteria andContGentDateNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("cont_gent_date not between", value1, value2, "contGentDate");
            return (Criteria) this;
        }

        public Criteria andContTotalAmountIsNull() {
            addCriterion("cont_total_amount is null");
            return (Criteria) this;
        }

        public Criteria andContTotalAmountIsNotNull() {
            addCriterion("cont_total_amount is not null");
            return (Criteria) this;
        }

        public Criteria andContTotalAmountEqualTo(Long value) {
            addCriterion("cont_total_amount =", value, "contTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContTotalAmountNotEqualTo(Long value) {
            addCriterion("cont_total_amount <>", value, "contTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContTotalAmountGreaterThan(Long value) {
            addCriterion("cont_total_amount >", value, "contTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContTotalAmountGreaterThanOrEqualTo(Long value) {
            addCriterion("cont_total_amount >=", value, "contTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContTotalAmountLessThan(Long value) {
            addCriterion("cont_total_amount <", value, "contTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContTotalAmountLessThanOrEqualTo(Long value) {
            addCriterion("cont_total_amount <=", value, "contTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContTotalAmountIn(List<Long> values) {
            addCriterion("cont_total_amount in", values, "contTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContTotalAmountNotIn(List<Long> values) {
            addCriterion("cont_total_amount not in", values, "contTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContTotalAmountBetween(Long value1, Long value2) {
            addCriterion("cont_total_amount between", value1, value2, "contTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContTotalAmountNotBetween(Long value1, Long value2) {
            addCriterion("cont_total_amount not between", value1, value2, "contTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContYearIsNull() {
            addCriterion("cont_year is null");
            return (Criteria) this;
        }

        public Criteria andContYearIsNotNull() {
            addCriterion("cont_year is not null");
            return (Criteria) this;
        }

        public Criteria andContYearEqualTo(Date value) {
            addCriterionForJDBCDate("cont_year =", value, "contYear");
            return (Criteria) this;
        }

        public Criteria andContYearNotEqualTo(Date value) {
            addCriterionForJDBCDate("cont_year <>", value, "contYear");
            return (Criteria) this;
        }

        public Criteria andContYearGreaterThan(Date value) {
            addCriterionForJDBCDate("cont_year >", value, "contYear");
            return (Criteria) this;
        }

        public Criteria andContYearGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("cont_year >=", value, "contYear");
            return (Criteria) this;
        }

        public Criteria andContYearLessThan(Date value) {
            addCriterionForJDBCDate("cont_year <", value, "contYear");
            return (Criteria) this;
        }

        public Criteria andContYearLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("cont_year <=", value, "contYear");
            return (Criteria) this;
        }

        public Criteria andContYearIn(List<Date> values) {
            addCriterionForJDBCDate("cont_year in", values, "contYear");
            return (Criteria) this;
        }

        public Criteria andContYearNotIn(List<Date> values) {
            addCriterionForJDBCDate("cont_year not in", values, "contYear");
            return (Criteria) this;
        }

        public Criteria andContYearBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("cont_year between", value1, value2, "contYear");
            return (Criteria) this;
        }

        public Criteria andContYearNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("cont_year not between", value1, value2, "contYear");
            return (Criteria) this;
        }

        public Criteria andContNameIsNull() {
            addCriterion("cont_name is null");
            return (Criteria) this;
        }

        public Criteria andContNameIsNotNull() {
            addCriterion("cont_name is not null");
            return (Criteria) this;
        }

        public Criteria andContNameEqualTo(String value) {
            addCriterion("cont_name =", value, "contName");
            return (Criteria) this;
        }

        public Criteria andContNameNotEqualTo(String value) {
            addCriterion("cont_name <>", value, "contName");
            return (Criteria) this;
        }

        public Criteria andContNameGreaterThan(String value) {
            addCriterion("cont_name >", value, "contName");
            return (Criteria) this;
        }

        public Criteria andContNameGreaterThanOrEqualTo(String value) {
            addCriterion("cont_name >=", value, "contName");
            return (Criteria) this;
        }

        public Criteria andContNameLessThan(String value) {
            addCriterion("cont_name <", value, "contName");
            return (Criteria) this;
        }

        public Criteria andContNameLessThanOrEqualTo(String value) {
            addCriterion("cont_name <=", value, "contName");
            return (Criteria) this;
        }

        public Criteria andContNameLike(String value) {
            addCriterion("cont_name like", value, "contName");
            return (Criteria) this;
        }

        public Criteria andContNameNotLike(String value) {
            addCriterion("cont_name not like", value, "contName");
            return (Criteria) this;
        }

        public Criteria andContNameIn(List<String> values) {
            addCriterion("cont_name in", values, "contName");
            return (Criteria) this;
        }

        public Criteria andContNameNotIn(List<String> values) {
            addCriterion("cont_name not in", values, "contName");
            return (Criteria) this;
        }

        public Criteria andContNameBetween(String value1, String value2) {
            addCriterion("cont_name between", value1, value2, "contName");
            return (Criteria) this;
        }

        public Criteria andContNameNotBetween(String value1, String value2) {
            addCriterion("cont_name not between", value1, value2, "contName");
            return (Criteria) this;
        }

        public Criteria andSubjectMatterQtyIsNull() {
            addCriterion("subject_matter_qty is null");
            return (Criteria) this;
        }

        public Criteria andSubjectMatterQtyIsNotNull() {
            addCriterion("subject_matter_qty is not null");
            return (Criteria) this;
        }

        public Criteria andSubjectMatterQtyEqualTo(Long value) {
            addCriterion("subject_matter_qty =", value, "subjectMatterQty");
            return (Criteria) this;
        }

        public Criteria andSubjectMatterQtyNotEqualTo(Long value) {
            addCriterion("subject_matter_qty <>", value, "subjectMatterQty");
            return (Criteria) this;
        }

        public Criteria andSubjectMatterQtyGreaterThan(Long value) {
            addCriterion("subject_matter_qty >", value, "subjectMatterQty");
            return (Criteria) this;
        }

        public Criteria andSubjectMatterQtyGreaterThanOrEqualTo(Long value) {
            addCriterion("subject_matter_qty >=", value, "subjectMatterQty");
            return (Criteria) this;
        }

        public Criteria andSubjectMatterQtyLessThan(Long value) {
            addCriterion("subject_matter_qty <", value, "subjectMatterQty");
            return (Criteria) this;
        }

        public Criteria andSubjectMatterQtyLessThanOrEqualTo(Long value) {
            addCriterion("subject_matter_qty <=", value, "subjectMatterQty");
            return (Criteria) this;
        }

        public Criteria andSubjectMatterQtyIn(List<Long> values) {
            addCriterion("subject_matter_qty in", values, "subjectMatterQty");
            return (Criteria) this;
        }

        public Criteria andSubjectMatterQtyNotIn(List<Long> values) {
            addCriterion("subject_matter_qty not in", values, "subjectMatterQty");
            return (Criteria) this;
        }

        public Criteria andSubjectMatterQtyBetween(Long value1, Long value2) {
            addCriterion("subject_matter_qty between", value1, value2, "subjectMatterQty");
            return (Criteria) this;
        }

        public Criteria andSubjectMatterQtyNotBetween(Long value1, Long value2) {
            addCriterion("subject_matter_qty not between", value1, value2, "subjectMatterQty");
            return (Criteria) this;
        }

        public Criteria andContRemarkIsNull() {
            addCriterion("cont_remark is null");
            return (Criteria) this;
        }

        public Criteria andContRemarkIsNotNull() {
            addCriterion("cont_remark is not null");
            return (Criteria) this;
        }

        public Criteria andContRemarkEqualTo(String value) {
            addCriterion("cont_remark =", value, "contRemark");
            return (Criteria) this;
        }

        public Criteria andContRemarkNotEqualTo(String value) {
            addCriterion("cont_remark <>", value, "contRemark");
            return (Criteria) this;
        }

        public Criteria andContRemarkGreaterThan(String value) {
            addCriterion("cont_remark >", value, "contRemark");
            return (Criteria) this;
        }

        public Criteria andContRemarkGreaterThanOrEqualTo(String value) {
            addCriterion("cont_remark >=", value, "contRemark");
            return (Criteria) this;
        }

        public Criteria andContRemarkLessThan(String value) {
            addCriterion("cont_remark <", value, "contRemark");
            return (Criteria) this;
        }

        public Criteria andContRemarkLessThanOrEqualTo(String value) {
            addCriterion("cont_remark <=", value, "contRemark");
            return (Criteria) this;
        }

        public Criteria andContRemarkLike(String value) {
            addCriterion("cont_remark like", value, "contRemark");
            return (Criteria) this;
        }

        public Criteria andContRemarkNotLike(String value) {
            addCriterion("cont_remark not like", value, "contRemark");
            return (Criteria) this;
        }

        public Criteria andContRemarkIn(List<String> values) {
            addCriterion("cont_remark in", values, "contRemark");
            return (Criteria) this;
        }

        public Criteria andContRemarkNotIn(List<String> values) {
            addCriterion("cont_remark not in", values, "contRemark");
            return (Criteria) this;
        }

        public Criteria andContRemarkBetween(String value1, String value2) {
            addCriterion("cont_remark between", value1, value2, "contRemark");
            return (Criteria) this;
        }

        public Criteria andContRemarkNotBetween(String value1, String value2) {
            addCriterion("cont_remark not between", value1, value2, "contRemark");
            return (Criteria) this;
        }

        public Criteria andAdvancePayIsNull() {
            addCriterion("advance_pay is null");
            return (Criteria) this;
        }

        public Criteria andAdvancePayIsNotNull() {
            addCriterion("advance_pay is not null");
            return (Criteria) this;
        }

        public Criteria andAdvancePayEqualTo(Integer value) {
            addCriterion("advance_pay =", value, "advancePay");
            return (Criteria) this;
        }

        public Criteria andAdvancePayNotEqualTo(Integer value) {
            addCriterion("advance_pay <>", value, "advancePay");
            return (Criteria) this;
        }

        public Criteria andAdvancePayGreaterThan(Integer value) {
            addCriterion("advance_pay >", value, "advancePay");
            return (Criteria) this;
        }

        public Criteria andAdvancePayGreaterThanOrEqualTo(Integer value) {
            addCriterion("advance_pay >=", value, "advancePay");
            return (Criteria) this;
        }

        public Criteria andAdvancePayLessThan(Integer value) {
            addCriterion("advance_pay <", value, "advancePay");
            return (Criteria) this;
        }

        public Criteria andAdvancePayLessThanOrEqualTo(Integer value) {
            addCriterion("advance_pay <=", value, "advancePay");
            return (Criteria) this;
        }

        public Criteria andAdvancePayIn(List<Integer> values) {
            addCriterion("advance_pay in", values, "advancePay");
            return (Criteria) this;
        }

        public Criteria andAdvancePayNotIn(List<Integer> values) {
            addCriterion("advance_pay not in", values, "advancePay");
            return (Criteria) this;
        }

        public Criteria andAdvancePayBetween(Integer value1, Integer value2) {
            addCriterion("advance_pay between", value1, value2, "advancePay");
            return (Criteria) this;
        }

        public Criteria andAdvancePayNotBetween(Integer value1, Integer value2) {
            addCriterion("advance_pay not between", value1, value2, "advancePay");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPercIsNull() {
            addCriterion("advance_pay_perc is null");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPercIsNotNull() {
            addCriterion("advance_pay_perc is not null");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPercEqualTo(Long value) {
            addCriterion("advance_pay_perc =", value, "advancePayPerc");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPercNotEqualTo(Long value) {
            addCriterion("advance_pay_perc <>", value, "advancePayPerc");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPercGreaterThan(Long value) {
            addCriterion("advance_pay_perc >", value, "advancePayPerc");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPercGreaterThanOrEqualTo(Long value) {
            addCriterion("advance_pay_perc >=", value, "advancePayPerc");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPercLessThan(Long value) {
            addCriterion("advance_pay_perc <", value, "advancePayPerc");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPercLessThanOrEqualTo(Long value) {
            addCriterion("advance_pay_perc <=", value, "advancePayPerc");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPercIn(List<Long> values) {
            addCriterion("advance_pay_perc in", values, "advancePayPerc");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPercNotIn(List<Long> values) {
            addCriterion("advance_pay_perc not in", values, "advancePayPerc");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPercBetween(Long value1, Long value2) {
            addCriterion("advance_pay_perc between", value1, value2, "advancePayPerc");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPercNotBetween(Long value1, Long value2) {
            addCriterion("advance_pay_perc not between", value1, value2, "advancePayPerc");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPlanDateIsNull() {
            addCriterion("advance_pay_plan_date is null");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPlanDateIsNotNull() {
            addCriterion("advance_pay_plan_date is not null");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPlanDateEqualTo(Date value) {
            addCriterionForJDBCDate("advance_pay_plan_date =", value, "advancePayPlanDate");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPlanDateNotEqualTo(Date value) {
            addCriterionForJDBCDate("advance_pay_plan_date <>", value, "advancePayPlanDate");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPlanDateGreaterThan(Date value) {
            addCriterionForJDBCDate("advance_pay_plan_date >", value, "advancePayPlanDate");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPlanDateGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("advance_pay_plan_date >=", value, "advancePayPlanDate");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPlanDateLessThan(Date value) {
            addCriterionForJDBCDate("advance_pay_plan_date <", value, "advancePayPlanDate");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPlanDateLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("advance_pay_plan_date <=", value, "advancePayPlanDate");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPlanDateIn(List<Date> values) {
            addCriterionForJDBCDate("advance_pay_plan_date in", values, "advancePayPlanDate");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPlanDateNotIn(List<Date> values) {
            addCriterionForJDBCDate("advance_pay_plan_date not in", values, "advancePayPlanDate");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPlanDateBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("advance_pay_plan_date between", value1, value2, "advancePayPlanDate");
            return (Criteria) this;
        }

        public Criteria andAdvancePayPlanDateNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("advance_pay_plan_date not between", value1, value2, "advancePayPlanDate");
            return (Criteria) this;
        }

        public Criteria andProgressPayIsNull() {
            addCriterion("progress_pay is null");
            return (Criteria) this;
        }

        public Criteria andProgressPayIsNotNull() {
            addCriterion("progress_pay is not null");
            return (Criteria) this;
        }

        public Criteria andProgressPayEqualTo(Integer value) {
            addCriterion("progress_pay =", value, "progressPay");
            return (Criteria) this;
        }

        public Criteria andProgressPayNotEqualTo(Integer value) {
            addCriterion("progress_pay <>", value, "progressPay");
            return (Criteria) this;
        }

        public Criteria andProgressPayGreaterThan(Integer value) {
            addCriterion("progress_pay >", value, "progressPay");
            return (Criteria) this;
        }

        public Criteria andProgressPayGreaterThanOrEqualTo(Integer value) {
            addCriterion("progress_pay >=", value, "progressPay");
            return (Criteria) this;
        }

        public Criteria andProgressPayLessThan(Integer value) {
            addCriterion("progress_pay <", value, "progressPay");
            return (Criteria) this;
        }

        public Criteria andProgressPayLessThanOrEqualTo(Integer value) {
            addCriterion("progress_pay <=", value, "progressPay");
            return (Criteria) this;
        }

        public Criteria andProgressPayIn(List<Integer> values) {
            addCriterion("progress_pay in", values, "progressPay");
            return (Criteria) this;
        }

        public Criteria andProgressPayNotIn(List<Integer> values) {
            addCriterion("progress_pay not in", values, "progressPay");
            return (Criteria) this;
        }

        public Criteria andProgressPayBetween(Integer value1, Integer value2) {
            addCriterion("progress_pay between", value1, value2, "progressPay");
            return (Criteria) this;
        }

        public Criteria andProgressPayNotBetween(Integer value1, Integer value2) {
            addCriterion("progress_pay not between", value1, value2, "progressPay");
            return (Criteria) this;
        }

        public Criteria andProgressPayPercIsNull() {
            addCriterion("progress_pay_perc is null");
            return (Criteria) this;
        }

        public Criteria andProgressPayPercIsNotNull() {
            addCriterion("progress_pay_perc is not null");
            return (Criteria) this;
        }

        public Criteria andProgressPayPercEqualTo(Long value) {
            addCriterion("progress_pay_perc =", value, "progressPayPerc");
            return (Criteria) this;
        }

        public Criteria andProgressPayPercNotEqualTo(Long value) {
            addCriterion("progress_pay_perc <>", value, "progressPayPerc");
            return (Criteria) this;
        }

        public Criteria andProgressPayPercGreaterThan(Long value) {
            addCriterion("progress_pay_perc >", value, "progressPayPerc");
            return (Criteria) this;
        }

        public Criteria andProgressPayPercGreaterThanOrEqualTo(Long value) {
            addCriterion("progress_pay_perc >=", value, "progressPayPerc");
            return (Criteria) this;
        }

        public Criteria andProgressPayPercLessThan(Long value) {
            addCriterion("progress_pay_perc <", value, "progressPayPerc");
            return (Criteria) this;
        }

        public Criteria andProgressPayPercLessThanOrEqualTo(Long value) {
            addCriterion("progress_pay_perc <=", value, "progressPayPerc");
            return (Criteria) this;
        }

        public Criteria andProgressPayPercIn(List<Long> values) {
            addCriterion("progress_pay_perc in", values, "progressPayPerc");
            return (Criteria) this;
        }

        public Criteria andProgressPayPercNotIn(List<Long> values) {
            addCriterion("progress_pay_perc not in", values, "progressPayPerc");
            return (Criteria) this;
        }

        public Criteria andProgressPayPercBetween(Long value1, Long value2) {
            addCriterion("progress_pay_perc between", value1, value2, "progressPayPerc");
            return (Criteria) this;
        }

        public Criteria andProgressPayPercNotBetween(Long value1, Long value2) {
            addCriterion("progress_pay_perc not between", value1, value2, "progressPayPerc");
            return (Criteria) this;
        }

        public Criteria andProgressPayPlanDateIsNull() {
            addCriterion("progress_pay_plan_date is null");
            return (Criteria) this;
        }

        public Criteria andProgressPayPlanDateIsNotNull() {
            addCriterion("progress_pay_plan_date is not null");
            return (Criteria) this;
        }

        public Criteria andProgressPayPlanDateEqualTo(Date value) {
            addCriterionForJDBCDate("progress_pay_plan_date =", value, "progressPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andProgressPayPlanDateNotEqualTo(Date value) {
            addCriterionForJDBCDate("progress_pay_plan_date <>", value, "progressPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andProgressPayPlanDateGreaterThan(Date value) {
            addCriterionForJDBCDate("progress_pay_plan_date >", value, "progressPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andProgressPayPlanDateGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("progress_pay_plan_date >=", value, "progressPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andProgressPayPlanDateLessThan(Date value) {
            addCriterionForJDBCDate("progress_pay_plan_date <", value, "progressPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andProgressPayPlanDateLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("progress_pay_plan_date <=", value, "progressPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andProgressPayPlanDateIn(List<Date> values) {
            addCriterionForJDBCDate("progress_pay_plan_date in", values, "progressPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andProgressPayPlanDateNotIn(List<Date> values) {
            addCriterionForJDBCDate("progress_pay_plan_date not in", values, "progressPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andProgressPayPlanDateBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("progress_pay_plan_date between", value1, value2, "progressPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andProgressPayPlanDateNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("progress_pay_plan_date not between", value1, value2, "progressPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andSendPayIsNull() {
            addCriterion("send_pay is null");
            return (Criteria) this;
        }

        public Criteria andSendPayIsNotNull() {
            addCriterion("send_pay is not null");
            return (Criteria) this;
        }

        public Criteria andSendPayEqualTo(Integer value) {
            addCriterion("send_pay =", value, "sendPay");
            return (Criteria) this;
        }

        public Criteria andSendPayNotEqualTo(Integer value) {
            addCriterion("send_pay <>", value, "sendPay");
            return (Criteria) this;
        }

        public Criteria andSendPayGreaterThan(Integer value) {
            addCriterion("send_pay >", value, "sendPay");
            return (Criteria) this;
        }

        public Criteria andSendPayGreaterThanOrEqualTo(Integer value) {
            addCriterion("send_pay >=", value, "sendPay");
            return (Criteria) this;
        }

        public Criteria andSendPayLessThan(Integer value) {
            addCriterion("send_pay <", value, "sendPay");
            return (Criteria) this;
        }

        public Criteria andSendPayLessThanOrEqualTo(Integer value) {
            addCriterion("send_pay <=", value, "sendPay");
            return (Criteria) this;
        }

        public Criteria andSendPayIn(List<Integer> values) {
            addCriterion("send_pay in", values, "sendPay");
            return (Criteria) this;
        }

        public Criteria andSendPayNotIn(List<Integer> values) {
            addCriterion("send_pay not in", values, "sendPay");
            return (Criteria) this;
        }

        public Criteria andSendPayBetween(Integer value1, Integer value2) {
            addCriterion("send_pay between", value1, value2, "sendPay");
            return (Criteria) this;
        }

        public Criteria andSendPayNotBetween(Integer value1, Integer value2) {
            addCriterion("send_pay not between", value1, value2, "sendPay");
            return (Criteria) this;
        }

        public Criteria andSendPayPercIsNull() {
            addCriterion("send_pay_perc is null");
            return (Criteria) this;
        }

        public Criteria andSendPayPercIsNotNull() {
            addCriterion("send_pay_perc is not null");
            return (Criteria) this;
        }

        public Criteria andSendPayPercEqualTo(Long value) {
            addCriterion("send_pay_perc =", value, "sendPayPerc");
            return (Criteria) this;
        }

        public Criteria andSendPayPercNotEqualTo(Long value) {
            addCriterion("send_pay_perc <>", value, "sendPayPerc");
            return (Criteria) this;
        }

        public Criteria andSendPayPercGreaterThan(Long value) {
            addCriterion("send_pay_perc >", value, "sendPayPerc");
            return (Criteria) this;
        }

        public Criteria andSendPayPercGreaterThanOrEqualTo(Long value) {
            addCriterion("send_pay_perc >=", value, "sendPayPerc");
            return (Criteria) this;
        }

        public Criteria andSendPayPercLessThan(Long value) {
            addCriterion("send_pay_perc <", value, "sendPayPerc");
            return (Criteria) this;
        }

        public Criteria andSendPayPercLessThanOrEqualTo(Long value) {
            addCriterion("send_pay_perc <=", value, "sendPayPerc");
            return (Criteria) this;
        }

        public Criteria andSendPayPercIn(List<Long> values) {
            addCriterion("send_pay_perc in", values, "sendPayPerc");
            return (Criteria) this;
        }

        public Criteria andSendPayPercNotIn(List<Long> values) {
            addCriterion("send_pay_perc not in", values, "sendPayPerc");
            return (Criteria) this;
        }

        public Criteria andSendPayPercBetween(Long value1, Long value2) {
            addCriterion("send_pay_perc between", value1, value2, "sendPayPerc");
            return (Criteria) this;
        }

        public Criteria andSendPayPercNotBetween(Long value1, Long value2) {
            addCriterion("send_pay_perc not between", value1, value2, "sendPayPerc");
            return (Criteria) this;
        }

        public Criteria andSendPayPlanDateIsNull() {
            addCriterion("send_pay_plan_date is null");
            return (Criteria) this;
        }

        public Criteria andSendPayPlanDateIsNotNull() {
            addCriterion("send_pay_plan_date is not null");
            return (Criteria) this;
        }

        public Criteria andSendPayPlanDateEqualTo(Date value) {
            addCriterionForJDBCDate("send_pay_plan_date =", value, "sendPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andSendPayPlanDateNotEqualTo(Date value) {
            addCriterionForJDBCDate("send_pay_plan_date <>", value, "sendPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andSendPayPlanDateGreaterThan(Date value) {
            addCriterionForJDBCDate("send_pay_plan_date >", value, "sendPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andSendPayPlanDateGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("send_pay_plan_date >=", value, "sendPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andSendPayPlanDateLessThan(Date value) {
            addCriterionForJDBCDate("send_pay_plan_date <", value, "sendPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andSendPayPlanDateLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("send_pay_plan_date <=", value, "sendPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andSendPayPlanDateIn(List<Date> values) {
            addCriterionForJDBCDate("send_pay_plan_date in", values, "sendPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andSendPayPlanDateNotIn(List<Date> values) {
            addCriterionForJDBCDate("send_pay_plan_date not in", values, "sendPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andSendPayPlanDateBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("send_pay_plan_date between", value1, value2, "sendPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andSendPayPlanDateNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("send_pay_plan_date not between", value1, value2, "sendPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andReceivePayIsNull() {
            addCriterion("receive_pay is null");
            return (Criteria) this;
        }

        public Criteria andReceivePayIsNotNull() {
            addCriterion("receive_pay is not null");
            return (Criteria) this;
        }

        public Criteria andReceivePayEqualTo(Integer value) {
            addCriterion("receive_pay =", value, "receivePay");
            return (Criteria) this;
        }

        public Criteria andReceivePayNotEqualTo(Integer value) {
            addCriterion("receive_pay <>", value, "receivePay");
            return (Criteria) this;
        }

        public Criteria andReceivePayGreaterThan(Integer value) {
            addCriterion("receive_pay >", value, "receivePay");
            return (Criteria) this;
        }

        public Criteria andReceivePayGreaterThanOrEqualTo(Integer value) {
            addCriterion("receive_pay >=", value, "receivePay");
            return (Criteria) this;
        }

        public Criteria andReceivePayLessThan(Integer value) {
            addCriterion("receive_pay <", value, "receivePay");
            return (Criteria) this;
        }

        public Criteria andReceivePayLessThanOrEqualTo(Integer value) {
            addCriterion("receive_pay <=", value, "receivePay");
            return (Criteria) this;
        }

        public Criteria andReceivePayIn(List<Integer> values) {
            addCriterion("receive_pay in", values, "receivePay");
            return (Criteria) this;
        }

        public Criteria andReceivePayNotIn(List<Integer> values) {
            addCriterion("receive_pay not in", values, "receivePay");
            return (Criteria) this;
        }

        public Criteria andReceivePayBetween(Integer value1, Integer value2) {
            addCriterion("receive_pay between", value1, value2, "receivePay");
            return (Criteria) this;
        }

        public Criteria andReceivePayNotBetween(Integer value1, Integer value2) {
            addCriterion("receive_pay not between", value1, value2, "receivePay");
            return (Criteria) this;
        }

        public Criteria andReceivePayPercIsNull() {
            addCriterion("receive_pay_perc is null");
            return (Criteria) this;
        }

        public Criteria andReceivePayPercIsNotNull() {
            addCriterion("receive_pay_perc is not null");
            return (Criteria) this;
        }

        public Criteria andReceivePayPercEqualTo(Long value) {
            addCriterion("receive_pay_perc =", value, "receivePayPerc");
            return (Criteria) this;
        }

        public Criteria andReceivePayPercNotEqualTo(Long value) {
            addCriterion("receive_pay_perc <>", value, "receivePayPerc");
            return (Criteria) this;
        }

        public Criteria andReceivePayPercGreaterThan(Long value) {
            addCriterion("receive_pay_perc >", value, "receivePayPerc");
            return (Criteria) this;
        }

        public Criteria andReceivePayPercGreaterThanOrEqualTo(Long value) {
            addCriterion("receive_pay_perc >=", value, "receivePayPerc");
            return (Criteria) this;
        }

        public Criteria andReceivePayPercLessThan(Long value) {
            addCriterion("receive_pay_perc <", value, "receivePayPerc");
            return (Criteria) this;
        }

        public Criteria andReceivePayPercLessThanOrEqualTo(Long value) {
            addCriterion("receive_pay_perc <=", value, "receivePayPerc");
            return (Criteria) this;
        }

        public Criteria andReceivePayPercIn(List<Long> values) {
            addCriterion("receive_pay_perc in", values, "receivePayPerc");
            return (Criteria) this;
        }

        public Criteria andReceivePayPercNotIn(List<Long> values) {
            addCriterion("receive_pay_perc not in", values, "receivePayPerc");
            return (Criteria) this;
        }

        public Criteria andReceivePayPercBetween(Long value1, Long value2) {
            addCriterion("receive_pay_perc between", value1, value2, "receivePayPerc");
            return (Criteria) this;
        }

        public Criteria andReceivePayPercNotBetween(Long value1, Long value2) {
            addCriterion("receive_pay_perc not between", value1, value2, "receivePayPerc");
            return (Criteria) this;
        }

        public Criteria andReceivePayPlanDateIsNull() {
            addCriterion("receive_pay_plan_date is null");
            return (Criteria) this;
        }

        public Criteria andReceivePayPlanDateIsNotNull() {
            addCriterion("receive_pay_plan_date is not null");
            return (Criteria) this;
        }

        public Criteria andReceivePayPlanDateEqualTo(Date value) {
            addCriterionForJDBCDate("receive_pay_plan_date =", value, "receivePayPlanDate");
            return (Criteria) this;
        }

        public Criteria andReceivePayPlanDateNotEqualTo(Date value) {
            addCriterionForJDBCDate("receive_pay_plan_date <>", value, "receivePayPlanDate");
            return (Criteria) this;
        }

        public Criteria andReceivePayPlanDateGreaterThan(Date value) {
            addCriterionForJDBCDate("receive_pay_plan_date >", value, "receivePayPlanDate");
            return (Criteria) this;
        }

        public Criteria andReceivePayPlanDateGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("receive_pay_plan_date >=", value, "receivePayPlanDate");
            return (Criteria) this;
        }

        public Criteria andReceivePayPlanDateLessThan(Date value) {
            addCriterionForJDBCDate("receive_pay_plan_date <", value, "receivePayPlanDate");
            return (Criteria) this;
        }

        public Criteria andReceivePayPlanDateLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("receive_pay_plan_date <=", value, "receivePayPlanDate");
            return (Criteria) this;
        }

        public Criteria andReceivePayPlanDateIn(List<Date> values) {
            addCriterionForJDBCDate("receive_pay_plan_date in", values, "receivePayPlanDate");
            return (Criteria) this;
        }

        public Criteria andReceivePayPlanDateNotIn(List<Date> values) {
            addCriterionForJDBCDate("receive_pay_plan_date not in", values, "receivePayPlanDate");
            return (Criteria) this;
        }

        public Criteria andReceivePayPlanDateBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("receive_pay_plan_date between", value1, value2, "receivePayPlanDate");
            return (Criteria) this;
        }

        public Criteria andReceivePayPlanDateNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("receive_pay_plan_date not between", value1, value2, "receivePayPlanDate");
            return (Criteria) this;
        }

        public Criteria andDebugPayIsNull() {
            addCriterion("debug_pay is null");
            return (Criteria) this;
        }

        public Criteria andDebugPayIsNotNull() {
            addCriterion("debug_pay is not null");
            return (Criteria) this;
        }

        public Criteria andDebugPayEqualTo(Integer value) {
            addCriterion("debug_pay =", value, "debugPay");
            return (Criteria) this;
        }

        public Criteria andDebugPayNotEqualTo(Integer value) {
            addCriterion("debug_pay <>", value, "debugPay");
            return (Criteria) this;
        }

        public Criteria andDebugPayGreaterThan(Integer value) {
            addCriterion("debug_pay >", value, "debugPay");
            return (Criteria) this;
        }

        public Criteria andDebugPayGreaterThanOrEqualTo(Integer value) {
            addCriterion("debug_pay >=", value, "debugPay");
            return (Criteria) this;
        }

        public Criteria andDebugPayLessThan(Integer value) {
            addCriterion("debug_pay <", value, "debugPay");
            return (Criteria) this;
        }

        public Criteria andDebugPayLessThanOrEqualTo(Integer value) {
            addCriterion("debug_pay <=", value, "debugPay");
            return (Criteria) this;
        }

        public Criteria andDebugPayIn(List<Integer> values) {
            addCriterion("debug_pay in", values, "debugPay");
            return (Criteria) this;
        }

        public Criteria andDebugPayNotIn(List<Integer> values) {
            addCriterion("debug_pay not in", values, "debugPay");
            return (Criteria) this;
        }

        public Criteria andDebugPayBetween(Integer value1, Integer value2) {
            addCriterion("debug_pay between", value1, value2, "debugPay");
            return (Criteria) this;
        }

        public Criteria andDebugPayNotBetween(Integer value1, Integer value2) {
            addCriterion("debug_pay not between", value1, value2, "debugPay");
            return (Criteria) this;
        }

        public Criteria andDebugPayPlanPercIsNull() {
            addCriterion("debug_pay_plan_perc is null");
            return (Criteria) this;
        }

        public Criteria andDebugPayPlanPercIsNotNull() {
            addCriterion("debug_pay_plan_perc is not null");
            return (Criteria) this;
        }

        public Criteria andDebugPayPlanPercEqualTo(Long value) {
            addCriterion("debug_pay_plan_perc =", value, "debugPayPlanPerc");
            return (Criteria) this;
        }

        public Criteria andDebugPayPlanPercNotEqualTo(Long value) {
            addCriterion("debug_pay_plan_perc <>", value, "debugPayPlanPerc");
            return (Criteria) this;
        }

        public Criteria andDebugPayPlanPercGreaterThan(Long value) {
            addCriterion("debug_pay_plan_perc >", value, "debugPayPlanPerc");
            return (Criteria) this;
        }

        public Criteria andDebugPayPlanPercGreaterThanOrEqualTo(Long value) {
            addCriterion("debug_pay_plan_perc >=", value, "debugPayPlanPerc");
            return (Criteria) this;
        }

        public Criteria andDebugPayPlanPercLessThan(Long value) {
            addCriterion("debug_pay_plan_perc <", value, "debugPayPlanPerc");
            return (Criteria) this;
        }

        public Criteria andDebugPayPlanPercLessThanOrEqualTo(Long value) {
            addCriterion("debug_pay_plan_perc <=", value, "debugPayPlanPerc");
            return (Criteria) this;
        }

        public Criteria andDebugPayPlanPercIn(List<Long> values) {
            addCriterion("debug_pay_plan_perc in", values, "debugPayPlanPerc");
            return (Criteria) this;
        }

        public Criteria andDebugPayPlanPercNotIn(List<Long> values) {
            addCriterion("debug_pay_plan_perc not in", values, "debugPayPlanPerc");
            return (Criteria) this;
        }

        public Criteria andDebugPayPlanPercBetween(Long value1, Long value2) {
            addCriterion("debug_pay_plan_perc between", value1, value2, "debugPayPlanPerc");
            return (Criteria) this;
        }

        public Criteria andDebugPayPlanPercNotBetween(Long value1, Long value2) {
            addCriterion("debug_pay_plan_perc not between", value1, value2, "debugPayPlanPerc");
            return (Criteria) this;
        }

        public Criteria andDebugPayDateIsNull() {
            addCriterion("debug_pay_date is null");
            return (Criteria) this;
        }

        public Criteria andDebugPayDateIsNotNull() {
            addCriterion("debug_pay_date is not null");
            return (Criteria) this;
        }

        public Criteria andDebugPayDateEqualTo(Date value) {
            addCriterionForJDBCDate("debug_pay_date =", value, "debugPayDate");
            return (Criteria) this;
        }

        public Criteria andDebugPayDateNotEqualTo(Date value) {
            addCriterionForJDBCDate("debug_pay_date <>", value, "debugPayDate");
            return (Criteria) this;
        }

        public Criteria andDebugPayDateGreaterThan(Date value) {
            addCriterionForJDBCDate("debug_pay_date >", value, "debugPayDate");
            return (Criteria) this;
        }

        public Criteria andDebugPayDateGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("debug_pay_date >=", value, "debugPayDate");
            return (Criteria) this;
        }

        public Criteria andDebugPayDateLessThan(Date value) {
            addCriterionForJDBCDate("debug_pay_date <", value, "debugPayDate");
            return (Criteria) this;
        }

        public Criteria andDebugPayDateLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("debug_pay_date <=", value, "debugPayDate");
            return (Criteria) this;
        }

        public Criteria andDebugPayDateIn(List<Date> values) {
            addCriterionForJDBCDate("debug_pay_date in", values, "debugPayDate");
            return (Criteria) this;
        }

        public Criteria andDebugPayDateNotIn(List<Date> values) {
            addCriterionForJDBCDate("debug_pay_date not in", values, "debugPayDate");
            return (Criteria) this;
        }

        public Criteria andDebugPayDateBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("debug_pay_date between", value1, value2, "debugPayDate");
            return (Criteria) this;
        }

        public Criteria andDebugPayDateNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("debug_pay_date not between", value1, value2, "debugPayDate");
            return (Criteria) this;
        }

        public Criteria andAcceptPayIsNull() {
            addCriterion("accept_pay is null");
            return (Criteria) this;
        }

        public Criteria andAcceptPayIsNotNull() {
            addCriterion("accept_pay is not null");
            return (Criteria) this;
        }

        public Criteria andAcceptPayEqualTo(Integer value) {
            addCriterion("accept_pay =", value, "acceptPay");
            return (Criteria) this;
        }

        public Criteria andAcceptPayNotEqualTo(Integer value) {
            addCriterion("accept_pay <>", value, "acceptPay");
            return (Criteria) this;
        }

        public Criteria andAcceptPayGreaterThan(Integer value) {
            addCriterion("accept_pay >", value, "acceptPay");
            return (Criteria) this;
        }

        public Criteria andAcceptPayGreaterThanOrEqualTo(Integer value) {
            addCriterion("accept_pay >=", value, "acceptPay");
            return (Criteria) this;
        }

        public Criteria andAcceptPayLessThan(Integer value) {
            addCriterion("accept_pay <", value, "acceptPay");
            return (Criteria) this;
        }

        public Criteria andAcceptPayLessThanOrEqualTo(Integer value) {
            addCriterion("accept_pay <=", value, "acceptPay");
            return (Criteria) this;
        }

        public Criteria andAcceptPayIn(List<Integer> values) {
            addCriterion("accept_pay in", values, "acceptPay");
            return (Criteria) this;
        }

        public Criteria andAcceptPayNotIn(List<Integer> values) {
            addCriterion("accept_pay not in", values, "acceptPay");
            return (Criteria) this;
        }

        public Criteria andAcceptPayBetween(Integer value1, Integer value2) {
            addCriterion("accept_pay between", value1, value2, "acceptPay");
            return (Criteria) this;
        }

        public Criteria andAcceptPayNotBetween(Integer value1, Integer value2) {
            addCriterion("accept_pay not between", value1, value2, "acceptPay");
            return (Criteria) this;
        }

        public Criteria andAcceptPayPercIsNull() {
            addCriterion("accept_pay_perc is null");
            return (Criteria) this;
        }

        public Criteria andAcceptPayPercIsNotNull() {
            addCriterion("accept_pay_perc is not null");
            return (Criteria) this;
        }

        public Criteria andAcceptPayPercEqualTo(Long value) {
            addCriterion("accept_pay_perc =", value, "acceptPayPerc");
            return (Criteria) this;
        }

        public Criteria andAcceptPayPercNotEqualTo(Long value) {
            addCriterion("accept_pay_perc <>", value, "acceptPayPerc");
            return (Criteria) this;
        }

        public Criteria andAcceptPayPercGreaterThan(Long value) {
            addCriterion("accept_pay_perc >", value, "acceptPayPerc");
            return (Criteria) this;
        }

        public Criteria andAcceptPayPercGreaterThanOrEqualTo(Long value) {
            addCriterion("accept_pay_perc >=", value, "acceptPayPerc");
            return (Criteria) this;
        }

        public Criteria andAcceptPayPercLessThan(Long value) {
            addCriterion("accept_pay_perc <", value, "acceptPayPerc");
            return (Criteria) this;
        }

        public Criteria andAcceptPayPercLessThanOrEqualTo(Long value) {
            addCriterion("accept_pay_perc <=", value, "acceptPayPerc");
            return (Criteria) this;
        }

        public Criteria andAcceptPayPercIn(List<Long> values) {
            addCriterion("accept_pay_perc in", values, "acceptPayPerc");
            return (Criteria) this;
        }

        public Criteria andAcceptPayPercNotIn(List<Long> values) {
            addCriterion("accept_pay_perc not in", values, "acceptPayPerc");
            return (Criteria) this;
        }

        public Criteria andAcceptPayPercBetween(Long value1, Long value2) {
            addCriterion("accept_pay_perc between", value1, value2, "acceptPayPerc");
            return (Criteria) this;
        }

        public Criteria andAcceptPayPercNotBetween(Long value1, Long value2) {
            addCriterion("accept_pay_perc not between", value1, value2, "acceptPayPerc");
            return (Criteria) this;
        }

        public Criteria andAcceptPayDateIsNull() {
            addCriterion("accept_pay_date is null");
            return (Criteria) this;
        }

        public Criteria andAcceptPayDateIsNotNull() {
            addCriterion("accept_pay_date is not null");
            return (Criteria) this;
        }

        public Criteria andAcceptPayDateEqualTo(Date value) {
            addCriterionForJDBCDate("accept_pay_date =", value, "acceptPayDate");
            return (Criteria) this;
        }

        public Criteria andAcceptPayDateNotEqualTo(Date value) {
            addCriterionForJDBCDate("accept_pay_date <>", value, "acceptPayDate");
            return (Criteria) this;
        }

        public Criteria andAcceptPayDateGreaterThan(Date value) {
            addCriterionForJDBCDate("accept_pay_date >", value, "acceptPayDate");
            return (Criteria) this;
        }

        public Criteria andAcceptPayDateGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("accept_pay_date >=", value, "acceptPayDate");
            return (Criteria) this;
        }

        public Criteria andAcceptPayDateLessThan(Date value) {
            addCriterionForJDBCDate("accept_pay_date <", value, "acceptPayDate");
            return (Criteria) this;
        }

        public Criteria andAcceptPayDateLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("accept_pay_date <=", value, "acceptPayDate");
            return (Criteria) this;
        }

        public Criteria andAcceptPayDateIn(List<Date> values) {
            addCriterionForJDBCDate("accept_pay_date in", values, "acceptPayDate");
            return (Criteria) this;
        }

        public Criteria andAcceptPayDateNotIn(List<Date> values) {
            addCriterionForJDBCDate("accept_pay_date not in", values, "acceptPayDate");
            return (Criteria) this;
        }

        public Criteria andAcceptPayDateBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("accept_pay_date between", value1, value2, "acceptPayDate");
            return (Criteria) this;
        }

        public Criteria andAcceptPayDateNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("accept_pay_date not between", value1, value2, "acceptPayDate");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayIsNull() {
            addCriterion("quality_guar_pay is null");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayIsNotNull() {
            addCriterion("quality_guar_pay is not null");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayEqualTo(Integer value) {
            addCriterion("quality_guar_pay =", value, "qualityGuarPay");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayNotEqualTo(Integer value) {
            addCriterion("quality_guar_pay <>", value, "qualityGuarPay");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayGreaterThan(Integer value) {
            addCriterion("quality_guar_pay >", value, "qualityGuarPay");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayGreaterThanOrEqualTo(Integer value) {
            addCriterion("quality_guar_pay >=", value, "qualityGuarPay");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayLessThan(Integer value) {
            addCriterion("quality_guar_pay <", value, "qualityGuarPay");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayLessThanOrEqualTo(Integer value) {
            addCriterion("quality_guar_pay <=", value, "qualityGuarPay");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayIn(List<Integer> values) {
            addCriterion("quality_guar_pay in", values, "qualityGuarPay");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayNotIn(List<Integer> values) {
            addCriterion("quality_guar_pay not in", values, "qualityGuarPay");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayBetween(Integer value1, Integer value2) {
            addCriterion("quality_guar_pay between", value1, value2, "qualityGuarPay");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayNotBetween(Integer value1, Integer value2) {
            addCriterion("quality_guar_pay not between", value1, value2, "qualityGuarPay");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPercIsNull() {
            addCriterion("quality_guar_pay_perc is null");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPercIsNotNull() {
            addCriterion("quality_guar_pay_perc is not null");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPercEqualTo(Long value) {
            addCriterion("quality_guar_pay_perc =", value, "qualityGuarPayPerc");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPercNotEqualTo(Long value) {
            addCriterion("quality_guar_pay_perc <>", value, "qualityGuarPayPerc");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPercGreaterThan(Long value) {
            addCriterion("quality_guar_pay_perc >", value, "qualityGuarPayPerc");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPercGreaterThanOrEqualTo(Long value) {
            addCriterion("quality_guar_pay_perc >=", value, "qualityGuarPayPerc");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPercLessThan(Long value) {
            addCriterion("quality_guar_pay_perc <", value, "qualityGuarPayPerc");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPercLessThanOrEqualTo(Long value) {
            addCriterion("quality_guar_pay_perc <=", value, "qualityGuarPayPerc");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPercIn(List<Long> values) {
            addCriterion("quality_guar_pay_perc in", values, "qualityGuarPayPerc");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPercNotIn(List<Long> values) {
            addCriterion("quality_guar_pay_perc not in", values, "qualityGuarPayPerc");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPercBetween(Long value1, Long value2) {
            addCriterion("quality_guar_pay_perc between", value1, value2, "qualityGuarPayPerc");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPercNotBetween(Long value1, Long value2) {
            addCriterion("quality_guar_pay_perc not between", value1, value2, "qualityGuarPayPerc");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPlanDateIsNull() {
            addCriterion("quality_guar_pay_plan_date is null");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPlanDateIsNotNull() {
            addCriterion("quality_guar_pay_plan_date is not null");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPlanDateEqualTo(Date value) {
            addCriterionForJDBCDate("quality_guar_pay_plan_date =", value, "qualityGuarPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPlanDateNotEqualTo(Date value) {
            addCriterionForJDBCDate("quality_guar_pay_plan_date <>", value, "qualityGuarPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPlanDateGreaterThan(Date value) {
            addCriterionForJDBCDate("quality_guar_pay_plan_date >", value, "qualityGuarPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPlanDateGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("quality_guar_pay_plan_date >=", value, "qualityGuarPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPlanDateLessThan(Date value) {
            addCriterionForJDBCDate("quality_guar_pay_plan_date <", value, "qualityGuarPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPlanDateLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("quality_guar_pay_plan_date <=", value, "qualityGuarPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPlanDateIn(List<Date> values) {
            addCriterionForJDBCDate("quality_guar_pay_plan_date in", values, "qualityGuarPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPlanDateNotIn(List<Date> values) {
            addCriterionForJDBCDate("quality_guar_pay_plan_date not in", values, "qualityGuarPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPlanDateBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("quality_guar_pay_plan_date between", value1, value2, "qualityGuarPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andQualityGuarPayPlanDateNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("quality_guar_pay_plan_date not between", value1, value2, "qualityGuarPayPlanDate");
            return (Criteria) this;
        }

        public Criteria andContProcessStatusIsNull() {
            addCriterion("cont_process_status is null");
            return (Criteria) this;
        }

        public Criteria andContProcessStatusIsNotNull() {
            addCriterion("cont_process_status is not null");
            return (Criteria) this;
        }

        public Criteria andContProcessStatusEqualTo(Integer value) {
            addCriterion("cont_process_status =", value, "contProcessStatus");
            return (Criteria) this;
        }

        public Criteria andContProcessStatusNotEqualTo(Integer value) {
            addCriterion("cont_process_status <>", value, "contProcessStatus");
            return (Criteria) this;
        }

        public Criteria andContProcessStatusGreaterThan(Integer value) {
            addCriterion("cont_process_status >", value, "contProcessStatus");
            return (Criteria) this;
        }

        public Criteria andContProcessStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("cont_process_status >=", value, "contProcessStatus");
            return (Criteria) this;
        }

        public Criteria andContProcessStatusLessThan(Integer value) {
            addCriterion("cont_process_status <", value, "contProcessStatus");
            return (Criteria) this;
        }

        public Criteria andContProcessStatusLessThanOrEqualTo(Integer value) {
            addCriterion("cont_process_status <=", value, "contProcessStatus");
            return (Criteria) this;
        }

        public Criteria andContProcessStatusIn(List<Integer> values) {
            addCriterion("cont_process_status in", values, "contProcessStatus");
            return (Criteria) this;
        }

        public Criteria andContProcessStatusNotIn(List<Integer> values) {
            addCriterion("cont_process_status not in", values, "contProcessStatus");
            return (Criteria) this;
        }

        public Criteria andContProcessStatusBetween(Integer value1, Integer value2) {
            addCriterion("cont_process_status between", value1, value2, "contProcessStatus");
            return (Criteria) this;
        }

        public Criteria andContProcessStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("cont_process_status not between", value1, value2, "contProcessStatus");
            return (Criteria) this;
        }

        public Criteria andTaskChangeIdIsNull() {
            addCriterion("task_change_id is null");
            return (Criteria) this;
        }

        public Criteria andTaskChangeIdIsNotNull() {
            addCriterion("task_change_id is not null");
            return (Criteria) this;
        }

        public Criteria andTaskChangeIdEqualTo(Integer value) {
            addCriterion("task_change_id =", value, "taskChangeId");
            return (Criteria) this;
        }

        public Criteria andTaskChangeIdNotEqualTo(Integer value) {
            addCriterion("task_change_id <>", value, "taskChangeId");
            return (Criteria) this;
        }

        public Criteria andTaskChangeIdGreaterThan(Integer value) {
            addCriterion("task_change_id >", value, "taskChangeId");
            return (Criteria) this;
        }

        public Criteria andTaskChangeIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("task_change_id >=", value, "taskChangeId");
            return (Criteria) this;
        }

        public Criteria andTaskChangeIdLessThan(Integer value) {
            addCriterion("task_change_id <", value, "taskChangeId");
            return (Criteria) this;
        }

        public Criteria andTaskChangeIdLessThanOrEqualTo(Integer value) {
            addCriterion("task_change_id <=", value, "taskChangeId");
            return (Criteria) this;
        }

        public Criteria andTaskChangeIdIn(List<Integer> values) {
            addCriterion("task_change_id in", values, "taskChangeId");
            return (Criteria) this;
        }

        public Criteria andTaskChangeIdNotIn(List<Integer> values) {
            addCriterion("task_change_id not in", values, "taskChangeId");
            return (Criteria) this;
        }

        public Criteria andTaskChangeIdBetween(Integer value1, Integer value2) {
            addCriterion("task_change_id between", value1, value2, "taskChangeId");
            return (Criteria) this;
        }

        public Criteria andTaskChangeIdNotBetween(Integer value1, Integer value2) {
            addCriterion("task_change_id not between", value1, value2, "taskChangeId");
            return (Criteria) this;
        }

        public Criteria andContChangeMarkIsNull() {
            addCriterion("cont_change_mark is null");
            return (Criteria) this;
        }

        public Criteria andContChangeMarkIsNotNull() {
            addCriterion("cont_change_mark is not null");
            return (Criteria) this;
        }

        public Criteria andContChangeMarkEqualTo(Integer value) {
            addCriterion("cont_change_mark =", value, "contChangeMark");
            return (Criteria) this;
        }

        public Criteria andContChangeMarkNotEqualTo(Integer value) {
            addCriterion("cont_change_mark <>", value, "contChangeMark");
            return (Criteria) this;
        }

        public Criteria andContChangeMarkGreaterThan(Integer value) {
            addCriterion("cont_change_mark >", value, "contChangeMark");
            return (Criteria) this;
        }

        public Criteria andContChangeMarkGreaterThanOrEqualTo(Integer value) {
            addCriterion("cont_change_mark >=", value, "contChangeMark");
            return (Criteria) this;
        }

        public Criteria andContChangeMarkLessThan(Integer value) {
            addCriterion("cont_change_mark <", value, "contChangeMark");
            return (Criteria) this;
        }

        public Criteria andContChangeMarkLessThanOrEqualTo(Integer value) {
            addCriterion("cont_change_mark <=", value, "contChangeMark");
            return (Criteria) this;
        }

        public Criteria andContChangeMarkIn(List<Integer> values) {
            addCriterion("cont_change_mark in", values, "contChangeMark");
            return (Criteria) this;
        }

        public Criteria andContChangeMarkNotIn(List<Integer> values) {
            addCriterion("cont_change_mark not in", values, "contChangeMark");
            return (Criteria) this;
        }

        public Criteria andContChangeMarkBetween(Integer value1, Integer value2) {
            addCriterion("cont_change_mark between", value1, value2, "contChangeMark");
            return (Criteria) this;
        }

        public Criteria andContChangeMarkNotBetween(Integer value1, Integer value2) {
            addCriterion("cont_change_mark not between", value1, value2, "contChangeMark");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}